package net.servir.capacidades.util;

import java.io.Serializable;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Vector;

public class Utilitarios implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = 3301696178482273141L;

	public Vector<Object> separaFuncionesPersonalizada(String cadena){
		Vector<Object> funciones=new Vector<Object>();
        String[] funcionesSeparadas = cadena.split(",");
        for (int i = 0; i < funcionesSeparadas.length; i++) {
        	funciones.add(funcionesSeparadas[i]);
        	
        }
		return funciones;
	}
	
	private static final char[] CONSTS_HEX = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};

    public String MD5(String stringAEncriptar) {
        try {
            MessageDigest msgd = MessageDigest.getInstance("MD5");
            byte[] bytes = msgd.digest(stringAEncriptar.getBytes());
            StringBuilder strbCadenaMD5 = new StringBuilder(2 * bytes.length);
            for (int i = 0; i < bytes.length; i++) {
                int bajo = (int) (bytes[i] & 0x0f);
                int alto = (int) ((bytes[i] & 0xf0) >> 4);
                strbCadenaMD5.append(CONSTS_HEX[alto]);
                strbCadenaMD5.append(CONSTS_HEX[bajo]);
            }
            return strbCadenaMD5.toString();
        } catch (NoSuchAlgorithmException e) {
            return null;
        }
    }
}
